#ifndef _POINT_H_
#define _POINT_H_

#define EPS 0.00001

typedef struct _Point{
	double x;
	double y;
	int used;
} Point;

//wyznacza odleglosc pomiedzy punktami
double distance(Point * p1, Point * p2);
//potrzebna do wyznaczenia okregu opisanego na trojkacie
double dot(Point * p1, Point * p2);
//porownoje dwa punkty
int compare(Point * p1, Point * p2);
//sprawdza czy punkty sa wspoliniowe
int isCoplanarWithPoints(Point * o, Point * p1, Point * p2);
int halfPlane(Point * o, Point * p1, Point * p2);
//wypisuje punkt
void printPoint(Point * p);
//alokuje pamiec dla punktu
Point * newPoint();

#endif
